package br.ufrn.sigtcc.util.specification.entidades;

import br.ufrn.sigtcc.model.entidades.Professor;
import br.ufrn.sigtcc.util.specification.ISpecification;

public class ProfessorSpecification 
		implements ISpecification<Professor> {  
	   
	  public boolean isSatisfiedBy(Professor professor) {  
	         if(       
	        		 verifyEmpty(professor) || verifyNull(professor) ){  
	             return false;  
	         }  
	         return true;  
	     }
	     
	     private boolean verifyNull(Professor professor){
	    	 if(
	    			 professor == null ||
	    			 professor.getNome() == null ||
	    			 professor.getCpf() == null ||
	    			 professor.getSexo() == null ||
	    			 professor.getDataNascimento() == null ||
	    			 professor.getEmail() == null ||
	    			 professor.getLogin() == null ||
	    			 professor.getSenha() == null ||
	    			 professor.getMatriculaSiape() == null )
	    	 	{  
	    	         return false;  
	    	 	}  
	    	         return true;  
	     }
	     
	     private boolean verifyEmpty(Professor professor){
	    	 if(
	    			 professor.getNome().equals("") ||
	    			 professor.getCpf().equals("")||
	    			 professor.getSexo().equals("") ||
	    			 professor.getDataNascimento().equals("") ||
	    			 professor.getEmail().equals("") ||
	    			 professor.getLogin().equals("") ||
	    			 professor.getSenha().equals("") ||
	    			 professor.getMatriculaSiape().equals("") )
	    	 	{  
	    	         return false;  
	    	 	}  
	    	         return true;  
	     }
}